Recent work showed that compiling functional programs to use dense, serialized memory representations for recursive algebraic datatypes can yield significant constant-factor speedups for sequential programs. But serializing data in a maximally dense format consequently serializes the processing of that data, yielding a tension between density and parallelism. This paper shows that a disciplined, practical compromise is possible. We present Parallel Gibbon, a compiler that obtains the benefits of dense data formats and parallelism. We formalize the semantics of the parallel location calculus underpinning this novel implementation strategy, and show that it is type-safe. Parallel Gibbon exceeds the parallel performance of existing compilers f...
In a typical data-processing program, the representation of data in memory is distinct from its repr...
Mobile web browsers and data visualization tools require a performance boost. Parallelization poses ...
The last several years have seen multicore architectures become ascendant in the computing world. As...
Recent work showed that compiling functional programs to use dense, serialized memory representation...
Recent work showed that compiling functional programs to use dense, serialized memory representation...
Recent work showed that compiling functional programs to use dense, serialized memory representation...
Data-parallel languages, such as H scIGH P scERFORMANCE F scORTRAN or F scORTRAN D, provide a machin...
When written idiomatically in most programming languages, programs that traverse and construct trees...
Trees are a useful data type, but they are not routinely included in parallel programming systems be...
We discuss a translation methodology for transforming a high level algorithmic specification written...
When written idiomatically in most programming languages, programs that traverse and construct trees...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
Increased programmability for concurrent applications in distributed systems requires automatic supp...
International audienceThis paper presents a technique for representing the high level semantics of p...
In the field of scientific computing, the use of parallelism has led to widespread improvements in t...
In a typical data-processing program, the representation of data in memory is distinct from its repr...
Mobile web browsers and data visualization tools require a performance boost. Parallelization poses ...
The last several years have seen multicore architectures become ascendant in the computing world. As...
Recent work showed that compiling functional programs to use dense, serialized memory representation...
Recent work showed that compiling functional programs to use dense, serialized memory representation...
Recent work showed that compiling functional programs to use dense, serialized memory representation...
Data-parallel languages, such as H scIGH P scERFORMANCE F scORTRAN or F scORTRAN D, provide a machin...
When written idiomatically in most programming languages, programs that traverse and construct trees...
Trees are a useful data type, but they are not routinely included in parallel programming systems be...
We discuss a translation methodology for transforming a high level algorithmic specification written...
When written idiomatically in most programming languages, programs that traverse and construct trees...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
Increased programmability for concurrent applications in distributed systems requires automatic supp...
International audienceThis paper presents a technique for representing the high level semantics of p...
In the field of scientific computing, the use of parallelism has led to widespread improvements in t...
In a typical data-processing program, the representation of data in memory is distinct from its repr...
Mobile web browsers and data visualization tools require a performance boost. Parallelization poses ...
The last several years have seen multicore architectures become ascendant in the computing world. As...